// Copyright (c) 2015, Outercurve Foundation.
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// - Redistributions of source code must  retain  the  above copyright notice, this
//   list of conditions and the following disclaimer.
//
// - Redistributions in binary form  must  reproduce the  above  copyright  notice,
//   this list of conditions  and  the  following  disclaimer in  the documentation
//   and/or other materials provided with the distribution.
//
// - Neither  the  name  of  the  Outercurve Foundation  nor   the   names  of  its
//   contributors may be used to endorse or  promote  products  derived  from  this
//   software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,  BUT  NOT  LIMITED TO, THE IMPLIED
// WARRANTIES  OF  MERCHANTABILITY   AND  FITNESS  FOR  A  PARTICULAR  PURPOSE  ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL,  SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO,  PROCUREMENT  OF  SUBSTITUTE  GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)  HOWEVER  CAUSED AND ON
// ANY  THEORY  OF  LIABILITY,  WHETHER  IN  CONTRACT,  STRICT  LIABILITY,  OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE)  ARISING  IN  ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.1
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace SolidCP.Providers.VirtualizationForPC.VirtualizationWebService {
    using System.Runtime.Serialization;
    using System;
    
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="VirtualMachineProvisioningRequest", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    [System.SerializableAttribute()]
    public partial class VirtualMachineProvisioningRequest : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string AdminPasswordField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ComputerNameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string DestinationPathField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string DnsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string GatewayField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string IPAddressField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long MemorySizeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string NotesField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string OSProductKeyField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string SubnetmaskField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string TemplateVirtualImageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string VirtualMachineNameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string VirtualSwitchNameField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string AdminPassword {
            get {
                return this.AdminPasswordField;
            }
            set {
                if ((object.ReferenceEquals(this.AdminPasswordField, value) != true)) {
                    this.AdminPasswordField = value;
                    this.RaisePropertyChanged("AdminPassword");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string ComputerName {
            get {
                return this.ComputerNameField;
            }
            set {
                if ((object.ReferenceEquals(this.ComputerNameField, value) != true)) {
                    this.ComputerNameField = value;
                    this.RaisePropertyChanged("ComputerName");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string DestinationPath {
            get {
                return this.DestinationPathField;
            }
            set {
                if ((object.ReferenceEquals(this.DestinationPathField, value) != true)) {
                    this.DestinationPathField = value;
                    this.RaisePropertyChanged("DestinationPath");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Dns {
            get {
                return this.DnsField;
            }
            set {
                if ((object.ReferenceEquals(this.DnsField, value) != true)) {
                    this.DnsField = value;
                    this.RaisePropertyChanged("Dns");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Gateway {
            get {
                return this.GatewayField;
            }
            set {
                if ((object.ReferenceEquals(this.GatewayField, value) != true)) {
                    this.GatewayField = value;
                    this.RaisePropertyChanged("Gateway");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string IPAddress {
            get {
                return this.IPAddressField;
            }
            set {
                if ((object.ReferenceEquals(this.IPAddressField, value) != true)) {
                    this.IPAddressField = value;
                    this.RaisePropertyChanged("IPAddress");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long MemorySize {
            get {
                return this.MemorySizeField;
            }
            set {
                if ((this.MemorySizeField.Equals(value) != true)) {
                    this.MemorySizeField = value;
                    this.RaisePropertyChanged("MemorySize");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Notes {
            get {
                return this.NotesField;
            }
            set {
                if ((object.ReferenceEquals(this.NotesField, value) != true)) {
                    this.NotesField = value;
                    this.RaisePropertyChanged("Notes");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string OSProductKey {
            get {
                return this.OSProductKeyField;
            }
            set {
                if ((object.ReferenceEquals(this.OSProductKeyField, value) != true)) {
                    this.OSProductKeyField = value;
                    this.RaisePropertyChanged("OSProductKey");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Subnetmask {
            get {
                return this.SubnetmaskField;
            }
            set {
                if ((object.ReferenceEquals(this.SubnetmaskField, value) != true)) {
                    this.SubnetmaskField = value;
                    this.RaisePropertyChanged("Subnetmask");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string TemplateVirtualImage {
            get {
                return this.TemplateVirtualImageField;
            }
            set {
                if ((object.ReferenceEquals(this.TemplateVirtualImageField, value) != true)) {
                    this.TemplateVirtualImageField = value;
                    this.RaisePropertyChanged("TemplateVirtualImage");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string VirtualMachineName {
            get {
                return this.VirtualMachineNameField;
            }
            set {
                if ((object.ReferenceEquals(this.VirtualMachineNameField, value) != true)) {
                    this.VirtualMachineNameField = value;
                    this.RaisePropertyChanged("VirtualMachineName");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string VirtualSwitchName {
            get {
                return this.VirtualSwitchNameField;
            }
            set {
                if ((object.ReferenceEquals(this.VirtualSwitchNameField, value) != true)) {
                    this.VirtualSwitchNameField = value;
                    this.RaisePropertyChanged("VirtualSwitchName");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
    [System.SerializableAttribute()]
    public partial class HostingServiceFault : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ErrorMessageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string OperationField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string ErrorMessage {
            get {
                return this.ErrorMessageField;
            }
            set {
                if ((object.ReferenceEquals(this.ErrorMessageField, value) != true)) {
                    this.ErrorMessageField = value;
                    this.RaisePropertyChanged("ErrorMessage");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Operation {
            get {
                return this.OperationField;
            }
            set {
                if ((object.ReferenceEquals(this.OperationField, value) != true)) {
                    this.OperationField = value;
                    this.RaisePropertyChanged("Operation");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="MemorySettingInfo", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    [System.SerializableAttribute()]
    public partial class MemorySettingInfo : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long AllocatedRAMField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualDeviceTypeInfo DeviceTypeField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long AllocatedRAM {
            get {
                return this.AllocatedRAMField;
            }
            set {
                if ((this.AllocatedRAMField.Equals(value) != true)) {
                    this.AllocatedRAMField = value;
                    this.RaisePropertyChanged("AllocatedRAM");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualDeviceTypeInfo DeviceType {
            get {
                return this.DeviceTypeField;
            }
            set {
                if ((this.DeviceTypeField.Equals(value) != true)) {
                    this.DeviceTypeField = value;
                    this.RaisePropertyChanged("DeviceType");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="VirtualDeviceTypeInfo", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    public enum VirtualDeviceTypeInfo : int {
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Unknown = 0,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Memory = 1,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Processor = 2,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        EthernetPortEmulated = 3,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        EthernetPortSynthetic = 4,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        SerialController = 5,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        SerialPort = 6,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        IDEController = 7,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        SCSISyntheticController = 8,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        DisketteController = 9,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        DisketteSyntheticDrive = 10,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        HardDiskSyntheticDirve = 11,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        HardDiskPhysicalDrive = 12,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        DVDSyntheticDrive = 13,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        TimeSync = 14,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Heartbeat = 15,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        DataExchange = 16,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Shutdown = 17,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        VSSIntegration = 18,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        HardDisk = 19,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        ISODisk = 20,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        FloppyDisk = 21,
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="ProcessorSettingInfo", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    [System.SerializableAttribute()]
    public partial class ProcessorSettingInfo : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualDeviceTypeInfo DeviceTypeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int LimitField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProcessorPerSocketField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ReservationField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int SocketCountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int VirtualQuantityField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int WeightField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualDeviceTypeInfo DeviceType {
            get {
                return this.DeviceTypeField;
            }
            set {
                if ((this.DeviceTypeField.Equals(value) != true)) {
                    this.DeviceTypeField = value;
                    this.RaisePropertyChanged("DeviceType");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int Limit {
            get {
                return this.LimitField;
            }
            set {
                if ((this.LimitField.Equals(value) != true)) {
                    this.LimitField = value;
                    this.RaisePropertyChanged("Limit");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProcessorPerSocket {
            get {
                return this.ProcessorPerSocketField;
            }
            set {
                if ((this.ProcessorPerSocketField.Equals(value) != true)) {
                    this.ProcessorPerSocketField = value;
                    this.RaisePropertyChanged("ProcessorPerSocket");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int Reservation {
            get {
                return this.ReservationField;
            }
            set {
                if ((this.ReservationField.Equals(value) != true)) {
                    this.ReservationField = value;
                    this.RaisePropertyChanged("Reservation");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int SocketCount {
            get {
                return this.SocketCountField;
            }
            set {
                if ((this.SocketCountField.Equals(value) != true)) {
                    this.SocketCountField = value;
                    this.RaisePropertyChanged("SocketCount");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int VirtualQuantity {
            get {
                return this.VirtualQuantityField;
            }
            set {
                if ((this.VirtualQuantityField.Equals(value) != true)) {
                    this.VirtualQuantityField = value;
                    this.RaisePropertyChanged("VirtualQuantity");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int Weight {
            get {
                return this.WeightField;
            }
            set {
                if ((this.WeightField.Equals(value) != true)) {
                    this.WeightField = value;
                    this.RaisePropertyChanged("Weight");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="VirtualComputerSystemSettingInfo", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    [System.SerializableAttribute()]
    public partial class VirtualComputerSystemSettingInfo : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool BiosNumLockField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.BootDeviceTypeInfo[] BootOrderField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.DateTime CreationTimeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string InstanceIdField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string NotesField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo ParentSnapshotField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo SettingTypeField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool BiosNumLock {
            get {
                return this.BiosNumLockField;
            }
            set {
                if ((this.BiosNumLockField.Equals(value) != true)) {
                    this.BiosNumLockField = value;
                    this.RaisePropertyChanged("BiosNumLock");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.BootDeviceTypeInfo[] BootOrder {
            get {
                return this.BootOrderField;
            }
            set {
                if ((object.ReferenceEquals(this.BootOrderField, value) != true)) {
                    this.BootOrderField = value;
                    this.RaisePropertyChanged("BootOrder");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.DateTime CreationTime {
            get {
                return this.CreationTimeField;
            }
            set {
                if ((this.CreationTimeField.Equals(value) != true)) {
                    this.CreationTimeField = value;
                    this.RaisePropertyChanged("CreationTime");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string InstanceId {
            get {
                return this.InstanceIdField;
            }
            set {
                if ((object.ReferenceEquals(this.InstanceIdField, value) != true)) {
                    this.InstanceIdField = value;
                    this.RaisePropertyChanged("InstanceId");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Notes {
            get {
                return this.NotesField;
            }
            set {
                if ((object.ReferenceEquals(this.NotesField, value) != true)) {
                    this.NotesField = value;
                    this.RaisePropertyChanged("Notes");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo ParentSnapshot {
            get {
                return this.ParentSnapshotField;
            }
            set {
                if ((object.ReferenceEquals(this.ParentSnapshotField, value) != true)) {
                    this.ParentSnapshotField = value;
                    this.RaisePropertyChanged("ParentSnapshot");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo SettingType {
            get {
                return this.SettingTypeField;
            }
            set {
                if ((object.ReferenceEquals(this.SettingTypeField, value) != true)) {
                    this.SettingTypeField = value;
                    this.RaisePropertyChanged("SettingType");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="BootDeviceTypeInfo", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    public enum BootDeviceTypeInfo : int {
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Floppy = 0,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        CDROM = 1,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        IDEHardDrive = 2,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        PXEBoot = 3,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        SCSIHardDrive = 4,
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="VirtualComputerSystemInfo", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    [System.SerializableAttribute()]
    public partial class VirtualComputerSystemInfo : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool BiosNumLockField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.BootDeviceTypeInfo[] BootOrderField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.DateTime CreationTimeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualSystemHealthStateInfo HealthStateField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string HostServerNameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string InstanceIdField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.MemorySettingInfo MemorySettingField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long MemoryUsageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string NotesField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProcessorLoadField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.ProcessorSettingInfo ProcessorSettingField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo[] SnapshotsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.EnabledStateInfo StateField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo SystemSettingField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string UpTimeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string VirtualMachineNameField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool BiosNumLock {
            get {
                return this.BiosNumLockField;
            }
            set {
                if ((this.BiosNumLockField.Equals(value) != true)) {
                    this.BiosNumLockField = value;
                    this.RaisePropertyChanged("BiosNumLock");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.BootDeviceTypeInfo[] BootOrder {
            get {
                return this.BootOrderField;
            }
            set {
                if ((object.ReferenceEquals(this.BootOrderField, value) != true)) {
                    this.BootOrderField = value;
                    this.RaisePropertyChanged("BootOrder");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.DateTime CreationTime {
            get {
                return this.CreationTimeField;
            }
            set {
                if ((this.CreationTimeField.Equals(value) != true)) {
                    this.CreationTimeField = value;
                    this.RaisePropertyChanged("CreationTime");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualSystemHealthStateInfo HealthState {
            get {
                return this.HealthStateField;
            }
            set {
                if ((this.HealthStateField.Equals(value) != true)) {
                    this.HealthStateField = value;
                    this.RaisePropertyChanged("HealthState");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string HostServerName {
            get {
                return this.HostServerNameField;
            }
            set {
                if ((object.ReferenceEquals(this.HostServerNameField, value) != true)) {
                    this.HostServerNameField = value;
                    this.RaisePropertyChanged("HostServerName");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string InstanceId {
            get {
                return this.InstanceIdField;
            }
            set {
                if ((object.ReferenceEquals(this.InstanceIdField, value) != true)) {
                    this.InstanceIdField = value;
                    this.RaisePropertyChanged("InstanceId");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.MemorySettingInfo MemorySetting {
            get {
                return this.MemorySettingField;
            }
            set {
                if ((object.ReferenceEquals(this.MemorySettingField, value) != true)) {
                    this.MemorySettingField = value;
                    this.RaisePropertyChanged("MemorySetting");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long MemoryUsage {
            get {
                return this.MemoryUsageField;
            }
            set {
                if ((this.MemoryUsageField.Equals(value) != true)) {
                    this.MemoryUsageField = value;
                    this.RaisePropertyChanged("MemoryUsage");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Notes {
            get {
                return this.NotesField;
            }
            set {
                if ((object.ReferenceEquals(this.NotesField, value) != true)) {
                    this.NotesField = value;
                    this.RaisePropertyChanged("Notes");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProcessorLoad {
            get {
                return this.ProcessorLoadField;
            }
            set {
                if ((this.ProcessorLoadField.Equals(value) != true)) {
                    this.ProcessorLoadField = value;
                    this.RaisePropertyChanged("ProcessorLoad");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.ProcessorSettingInfo ProcessorSetting {
            get {
                return this.ProcessorSettingField;
            }
            set {
                if ((object.ReferenceEquals(this.ProcessorSettingField, value) != true)) {
                    this.ProcessorSettingField = value;
                    this.RaisePropertyChanged("ProcessorSetting");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo[] Snapshots {
            get {
                return this.SnapshotsField;
            }
            set {
                if ((object.ReferenceEquals(this.SnapshotsField, value) != true)) {
                    this.SnapshotsField = value;
                    this.RaisePropertyChanged("Snapshots");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.EnabledStateInfo State {
            get {
                return this.StateField;
            }
            set {
                if ((this.StateField.Equals(value) != true)) {
                    this.StateField = value;
                    this.RaisePropertyChanged("State");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo SystemSetting {
            get {
                return this.SystemSettingField;
            }
            set {
                if ((object.ReferenceEquals(this.SystemSettingField, value) != true)) {
                    this.SystemSettingField = value;
                    this.RaisePropertyChanged("SystemSetting");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string UpTime {
            get {
                return this.UpTimeField;
            }
            set {
                if ((object.ReferenceEquals(this.UpTimeField, value) != true)) {
                    this.UpTimeField = value;
                    this.RaisePropertyChanged("UpTime");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string VirtualMachineName {
            get {
                return this.VirtualMachineNameField;
            }
            set {
                if ((object.ReferenceEquals(this.VirtualMachineNameField, value) != true)) {
                    this.VirtualMachineNameField = value;
                    this.RaisePropertyChanged("VirtualMachineName");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="VirtualSystemHealthStateInfo", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    public enum VirtualSystemHealthStateInfo : int {
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        CriticalFailure = 25,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Ok = 5,
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="EnabledStateInfo", Namespace="http://Microsoft.Hosting.Virtualization.DataContracts/2007/04")]
    public enum EnabledStateInfo : int {
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Unknown = 0,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Enabled = 2,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Disabled = 3,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        ShuttingDown = 4,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Reset = 10,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Paused = 32768,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Saved = 32769,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Starting = 32770,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Snapshotting = 32771,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Migrating = 32772,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Saving = 32773,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Stopping = 32774,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Deleted = 32775,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Pausing = 32776,
        
        [System.Runtime.Serialization.EnumMemberAttribute()]
        Resuming = 32777,
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    [System.ServiceModel.ServiceContractAttribute(Namespace="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04", ConfigurationName="VirtualizationWebService.IVirtualizationProvisioningService")]
    public interface IVirtualizationProvisioningService {
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/CreateVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/CreateVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/CreateVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool CreateVirtualSystem(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualMachineProvisioningRequest request, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/MountVirtualHardDisk", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/MountVirtualHardDiskResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/MountVirtualHardDiskHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        string MountVirtualHardDisk(string virtualDiskPath, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/UnmountVirtualHardDisk", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/UnmountVirtualHardDiskResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/UnmountVirtualHardDiskHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool UnmountVirtualHardDisk(string virtualDiskPath, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/DefineVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/DefineVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/DefineVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool DefineVirtualSystem(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualMachineProvisioningRequest request, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/RemoveVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/RemoveVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/RemoveVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool RemoveVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/StartVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/StartVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/StartVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool StartVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/TurnoffVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/TurnoffVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/TurnoffVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool TurnoffVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/PauseVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/PauseVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/PauseVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool PauseVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ResumeVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ResumeVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ResumeVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool ResumeVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/SnapshotVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/SnapshotVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/SnapshotVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool SnapshotVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/SaveVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/SaveVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/SaveVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool SaveVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ResetVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ResetVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ResetVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool ResetVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ShutdownVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ShutdownVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ShutdownVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool ShutdownVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemMemorySetting", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemMemorySettingResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemMemorySettingHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool ChangeVirtualSystemMemorySetting(string systemName, string serverName, SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.MemorySettingInfo setting, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemProcessorSetting", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemProcessorSettingResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemProcessorSettingHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool ChangeVirtualSystemProcessorSetting(string systemName, string serverName, SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.ProcessorSettingInfo setting, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemSetting", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemSettingResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/ChangeVirtualSystemSettingHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        bool ChangeVirtualSystemSetting(string systemName, string serverName, SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo setting, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystems", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystemsResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystemsHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemInfo[] GetVirtualSystems(string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystem", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystemResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystemHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemInfo GetVirtualSystem(string systemName, string serverName, string domain, string userName, string password);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystemThumbnailImage", ReplyAction="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystemThumbnailImageResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.HostingServiceFault), Action="http://Microsoft.Hosting.Virtualization.ServiceContracts/2007/04/IVirtualizationP" +
            "rovisioningService/GetVirtualSystemThumbnailImageHostingServiceFaultFault", Name="HostingServiceFault", Namespace="http://Microsoft.Hosting.FaultContracts/2007/04")]
        byte[] GetVirtualSystemThumbnailImage(int imgWidth, int imgHeight, string systemName, string serverName, string domain, string userName, string password);
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public interface IVirtualizationProvisioningServiceChannel : SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.IVirtualizationProvisioningService, System.ServiceModel.IClientChannel {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public partial class VirtualizationProvisioningServiceClient : System.ServiceModel.ClientBase<SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.IVirtualizationProvisioningService>, SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.IVirtualizationProvisioningService {
        
        public VirtualizationProvisioningServiceClient() {
        }
        
        public VirtualizationProvisioningServiceClient(string endpointConfigurationName) : 
                base(endpointConfigurationName) {
        }
        
        public VirtualizationProvisioningServiceClient(string endpointConfigurationName, string remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public VirtualizationProvisioningServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public VirtualizationProvisioningServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress) {
        }
        
        public bool CreateVirtualSystem(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualMachineProvisioningRequest request, string serverName, string domain, string userName, string password) {
            return base.Channel.CreateVirtualSystem(request, serverName, domain, userName, password);
        }
        
        public string MountVirtualHardDisk(string virtualDiskPath, string serverName, string domain, string userName, string password) {
            return base.Channel.MountVirtualHardDisk(virtualDiskPath, serverName, domain, userName, password);
        }
        
        public bool UnmountVirtualHardDisk(string virtualDiskPath, string serverName, string domain, string userName, string password) {
            return base.Channel.UnmountVirtualHardDisk(virtualDiskPath, serverName, domain, userName, password);
        }
        
        public bool DefineVirtualSystem(SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualMachineProvisioningRequest request, string serverName, string domain, string userName, string password) {
            return base.Channel.DefineVirtualSystem(request, serverName, domain, userName, password);
        }
        
        public bool RemoveVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.RemoveVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool StartVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.StartVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool TurnoffVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.TurnoffVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool PauseVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.PauseVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool ResumeVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.ResumeVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool SnapshotVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.SnapshotVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool SaveVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.SaveVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool ResetVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.ResetVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool ShutdownVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.ShutdownVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public bool ChangeVirtualSystemMemorySetting(string systemName, string serverName, SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.MemorySettingInfo setting, string domain, string userName, string password) {
            return base.Channel.ChangeVirtualSystemMemorySetting(systemName, serverName, setting, domain, userName, password);
        }
        
        public bool ChangeVirtualSystemProcessorSetting(string systemName, string serverName, SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.ProcessorSettingInfo setting, string domain, string userName, string password) {
            return base.Channel.ChangeVirtualSystemProcessorSetting(systemName, serverName, setting, domain, userName, password);
        }
        
        public bool ChangeVirtualSystemSetting(string systemName, string serverName, SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemSettingInfo setting, string domain, string userName, string password) {
            return base.Channel.ChangeVirtualSystemSetting(systemName, serverName, setting, domain, userName, password);
        }
        
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemInfo[] GetVirtualSystems(string serverName, string domain, string userName, string password) {
            return base.Channel.GetVirtualSystems(serverName, domain, userName, password);
        }
        
        public SolidCP.Providers.VirtualizationForPC.VirtualizationWebService.VirtualComputerSystemInfo GetVirtualSystem(string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.GetVirtualSystem(systemName, serverName, domain, userName, password);
        }
        
        public byte[] GetVirtualSystemThumbnailImage(int imgWidth, int imgHeight, string systemName, string serverName, string domain, string userName, string password) {
            return base.Channel.GetVirtualSystemThumbnailImage(imgWidth, imgHeight, systemName, serverName, domain, userName, password);
        }
    }
}
